#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>


/*
fork创建进程会复制父进程的内存空间，但子进程的pid和ppid不同
并且子进程的返回值是0，父进程的返回值是子进程的pid
后续程序执行时，子进程和父进程是并行执行的
继续程序计数器往后执行

*/

int main(int argc, char const *argv[])
{
    printf("主进程开始执行程序：%d\n", getpid());

    pid_t pid = fork();
    int sum = 100; 
    if (pid == 0)
    {
        sum++;
        printf("子进程开始执行程序：%d,%d\n", getpid(),sum);
    }else if (pid > 0)
    {
        sum--;
        printf("主进程开始执行程序：%d,%d\n", getpid(),sum);
    }
    
    
    return 0;
}
